<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>0.8.2 API documentation: image Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">0.8.2 API documentation
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="a00074.html">gli</a></li><li class="navelem"><a class="el" href="a00003.html">image</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="a00081.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">image Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Image, representation for a single texture level.  
 <a href="a00003.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ac8bb3912a3ce86b15842e79d0b421204"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac8bb3912a3ce86b15842e79d0b421204"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#ac8bb3912a3ce86b15842e79d0b421204">clear</a> ()</td></tr>
<tr class="memdesc:ac8bb3912a3ce86b15842e79d0b421204"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the entire image storage_linear with zeros. <br /></td></tr>
<tr class="separator:ac8bb3912a3ce86b15842e79d0b421204"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5bb9c1e1b03193fb5c6fabe39301110"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:ad5bb9c1e1b03193fb5c6fabe39301110"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#ad5bb9c1e1b03193fb5c6fabe39301110">clear</a> (genType const &amp;Texel)</td></tr>
<tr class="memdesc:ad5bb9c1e1b03193fb5c6fabe39301110"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the entire image storage_linear with Texel which type must match the image storage_linear format block size If the type of genType doesn't match the type of the image format, no conversion is performed and the data will be reinterpreted as if is was of the image format.  <a href="#ad5bb9c1e1b03193fb5c6fabe39301110">More...</a><br /></td></tr>
<tr class="separator:ad5bb9c1e1b03193fb5c6fabe39301110"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f2c67dc864c6b6e705710853b5568ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f2c67dc864c6b6e705710853b5568ef"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a3f2c67dc864c6b6e705710853b5568ef">data</a> ()</td></tr>
<tr class="memdesc:a3f2c67dc864c6b6e705710853b5568ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer to the beginning of the image instance data. <br /></td></tr>
<tr class="separator:a3f2c67dc864c6b6e705710853b5568ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec236abf7eac8ff4eec54eda033b9288"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec236abf7eac8ff4eec54eda033b9288"></a>
void const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#aec236abf7eac8ff4eec54eda033b9288">data</a> () const </td></tr>
<tr class="memdesc:aec236abf7eac8ff4eec54eda033b9288"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer to the beginning of the image instance data. <br /></td></tr>
<tr class="separator:aec236abf7eac8ff4eec54eda033b9288"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a310f3ca6b342ecbcb22d0acc4eb3ae57"><td class="memTemplParams" colspan="2"><a class="anchor" id="a310f3ca6b342ecbcb22d0acc4eb3ae57"></a>
template&lt;typename genType &gt; </td></tr>
<tr class="memitem:a310f3ca6b342ecbcb22d0acc4eb3ae57"><td class="memTemplItemLeft" align="right" valign="top">genType *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#a310f3ca6b342ecbcb22d0acc4eb3ae57">data</a> ()</td></tr>
<tr class="memdesc:a310f3ca6b342ecbcb22d0acc4eb3ae57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer of type genType which size must match the image format block size. <br /></td></tr>
<tr class="separator:a310f3ca6b342ecbcb22d0acc4eb3ae57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22b0feffbc4e89ad8fae247eb1424852"><td class="memTemplParams" colspan="2"><a class="anchor" id="a22b0feffbc4e89ad8fae247eb1424852"></a>
template&lt;typename genType &gt; </td></tr>
<tr class="memitem:a22b0feffbc4e89ad8fae247eb1424852"><td class="memTemplItemLeft" align="right" valign="top">genType const *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#a22b0feffbc4e89ad8fae247eb1424852">data</a> () const </td></tr>
<tr class="memdesc:a22b0feffbc4e89ad8fae247eb1424852"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a pointer of type genType which size must match the image format block size. <br /></td></tr>
<tr class="separator:a22b0feffbc4e89ad8fae247eb1424852"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6e61de369e994009e36f344f99c15ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6e61de369e994009e36f344f99c15ad"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#ac6e61de369e994009e36f344f99c15ad">empty</a> () const </td></tr>
<tr class="memdesc:ac6e61de369e994009e36f344f99c15ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return whether the image instance is empty, no storage_linear or description have been assigned to the instance. <br /></td></tr>
<tr class="separator:ac6e61de369e994009e36f344f99c15ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c9de4b32898ed383505745972d6c009"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c9de4b32898ed383505745972d6c009"></a>
extent_type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a4c9de4b32898ed383505745972d6c009">extent</a> () const </td></tr>
<tr class="memdesc:a4c9de4b32898ed383505745972d6c009"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the dimensions of an image instance: width, height and depth. <br /></td></tr>
<tr class="separator:a4c9de4b32898ed383505745972d6c009"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad94928ca00873970455c1fb2d3c03fd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad94928ca00873970455c1fb2d3c03fd8"></a>
<a class="el" href="a00074.html#a387137c43ed9616d39ba90e890d181eb">format_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#ad94928ca00873970455c1fb2d3c03fd8">format</a> () const </td></tr>
<tr class="memdesc:ad94928ca00873970455c1fb2d3c03fd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the image instance format. <br /></td></tr>
<tr class="separator:ad94928ca00873970455c1fb2d3c03fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4f40c94d3427e415d291c68d3e67cfa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4f40c94d3427e415d291c68d3e67cfa"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#ab4f40c94d3427e415d291c68d3e67cfa">image</a> ()</td></tr>
<tr class="memdesc:ab4f40c94d3427e415d291c68d3e67cfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an empty image instance. <br /></td></tr>
<tr class="separator:ab4f40c94d3427e415d291c68d3e67cfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a828b5030180522b6c967674f12085a91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a828b5030180522b6c967674f12085a91"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a828b5030180522b6c967674f12085a91">image</a> (<a class="el" href="a00074.html#a387137c43ed9616d39ba90e890d181eb">format_type</a> Format, extent_type const &amp;Extent)</td></tr>
<tr class="memdesc:a828b5030180522b6c967674f12085a91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an image object and allocate an image storoge for it. <br /></td></tr>
<tr class="separator:a828b5030180522b6c967674f12085a91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab88ab938ed93fbb2e1cb9047aef29efa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#ab88ab938ed93fbb2e1cb9047aef29efa">image</a> (<a class="el" href="a00003.html">image</a> const &amp;Image, <a class="el" href="a00074.html#a387137c43ed9616d39ba90e890d181eb">format_type</a> Format)</td></tr>
<tr class="memdesc:ab88ab938ed93fbb2e1cb9047aef29efa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an image object by sharing an existing image storage_linear from another image instance.  <a href="#ab88ab938ed93fbb2e1cb9047aef29efa">More...</a><br /></td></tr>
<tr class="separator:ab88ab938ed93fbb2e1cb9047aef29efa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c04da2a2b96b59710315218eae1bf8b"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:a2c04da2a2b96b59710315218eae1bf8b"><td class="memTemplItemLeft" align="right" valign="top">genType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#a2c04da2a2b96b59710315218eae1bf8b">load</a> (extent_type const &amp;TexelCoord)</td></tr>
<tr class="memdesc:a2c04da2a2b96b59710315218eae1bf8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load the texel located at TexelCoord coordinates.  <a href="#a2c04da2a2b96b59710315218eae1bf8b">More...</a><br /></td></tr>
<tr class="separator:a2c04da2a2b96b59710315218eae1bf8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a503ab01f6c0142145d3434f6924714e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a503ab01f6c0142145d3434f6924714e7"></a>
size_type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00003.html#a503ab01f6c0142145d3434f6924714e7">size</a> () const </td></tr>
<tr class="memdesc:a503ab01f6c0142145d3434f6924714e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the memory size of an image instance storage_linear in bytes. <br /></td></tr>
<tr class="separator:a503ab01f6c0142145d3434f6924714e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24789b8cce4dcbe8e0d3a47b68447aba"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:a24789b8cce4dcbe8e0d3a47b68447aba"><td class="memTemplItemLeft" align="right" valign="top">size_type&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#a24789b8cce4dcbe8e0d3a47b68447aba">size</a> () const </td></tr>
<tr class="memdesc:a24789b8cce4dcbe8e0d3a47b68447aba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of blocks contained in an image instance storage_linear.  <a href="#a24789b8cce4dcbe8e0d3a47b68447aba">More...</a><br /></td></tr>
<tr class="separator:a24789b8cce4dcbe8e0d3a47b68447aba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d2a0cda41c9697b915f4c176ad77ef3"><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr class="memitem:a0d2a0cda41c9697b915f4c176ad77ef3"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00003.html#a0d2a0cda41c9697b915f4c176ad77ef3">store</a> (extent_type const &amp;TexelCoord, genType const &amp;Data)</td></tr>
<tr class="memdesc:a0d2a0cda41c9697b915f4c176ad77ef3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store the texel located at TexelCoord coordinates.  <a href="#a0d2a0cda41c9697b915f4c176ad77ef3">More...</a><br /></td></tr>
<tr class="separator:a0d2a0cda41c9697b915f4c176ad77ef3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Image, representation for a single texture level. </p>

<p>Definition at line <a class="el" href="a00037_source.html#l00011">11</a> of file <a class="el" href="a00037_source.html">image.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab88ab938ed93fbb2e1cb9047aef29efa"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00003.html">image</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00003.html">image</a> const &amp;&#160;</td>
          <td class="paramname"><em>Image</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00074.html#a387137c43ed9616d39ba90e890d181eb">format_type</a>&#160;</td>
          <td class="paramname"><em>Format</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create an image object by sharing an existing image storage_linear from another image instance. </p>
<p>This image object is effectively an image view where format can be reinterpreted with a different compatible image format. For formats to be compatible, the block size of source and destination must match. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad5bb9c1e1b03193fb5c6fabe39301110"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void clear </td>
          <td>(</td>
          <td class="paramtype">genType const &amp;&#160;</td>
          <td class="paramname"><em>Texel</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Clear the entire image storage_linear with Texel which type must match the image storage_linear format block size If the type of genType doesn't match the type of the image format, no conversion is performed and the data will be reinterpreted as if is was of the image format. </p>

</div>
</div>
<a class="anchor" id="a2c04da2a2b96b59710315218eae1bf8b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">genType load </td>
          <td>(</td>
          <td class="paramtype">extent_type const &amp;&#160;</td>
          <td class="paramname"><em>TexelCoord</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Load the texel located at TexelCoord coordinates. </p>
<p>It's an error to call this function if the format is compressed. It's an error if TexelCoord values aren't between [0, dimensions]. </p>

</div>
</div>
<a class="anchor" id="a24789b8cce4dcbe8e0d3a47b68447aba"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_type size </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return the number of blocks contained in an image instance storage_linear. </p>
<p>genType size must match the block size conresponding to the image format. </p>

</div>
</div>
<a class="anchor" id="a0d2a0cda41c9697b915f4c176ad77ef3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void store </td>
          <td>(</td>
          <td class="paramtype">extent_type const &amp;&#160;</td>
          <td class="paramname"><em>TexelCoord</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">genType const &amp;&#160;</td>
          <td class="paramname"><em>Data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Store the texel located at TexelCoord coordinates. </p>
<p>It's an error to call this function if the format is compressed. It's an error if TexelCoord values aren't between [0, dimensions]. </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>
